Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added file attribute lines for a clean compile on Genera #1

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Symbolics
Copy link

Genera requires file attributes to be set for proper compilation. These are set by the first line of the file. No code changes required.

@scymtym
Copy link
Member

scymtym commented Aug 27, 2019

This requirement is non-standard. Can it be worked around on the Genera side?

@Symbolics
Copy link
Author

There is no workaround on the Genera side (I would have done so if possible and saved the trouble of updating every third party package we use!). Here's a bit more detail on the requested change from some other upstream project pull-requests:

Briefly, the attribute line sets certain properties of the file when it is read, and these are used when compiling and loading. For example 'Syntax' specifies one of the (at least) three dialects of LISP that Genera runs:

LISP             -> ZetaLisp
COMMON-LISP      -> CLtL2
ANSI-COMMON-LISP -> ANSI LISP

A common problem is people putting COMMON-LISP (CltL2) in for Syntax. It's close enough that it will sometimes work, but often introduces subtle bugs. This is probably partly because emacs also uses this line to set some editing modes and people do not realize that they have real meaning to some compilers and are not just cosmetic.

The Package attribute is equivalent to (in-package). Genera honors (in-package), but not until after compiling and loading the file using the Package attribute. If the Package attribute wasn't set, it uses the current package, which is often the last file compiled, so you end up with the definitions being loaded into packages off by one.

Fortunately the fix is easily made by adding syntax and package attributes in the file attribute line at the top of the file.

@Symbolics
Copy link
Author

Bump. I'd love to delete my fork of this from the repo. Can we please get this merged?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants